

package com.coding4play.mqtt.common.repository;

import com.coding4play.mqtt.common.entity.message.DupPubRelMessage;

import java.util.List;

/**
 * PUBREL重发消息存储服务接口, 当QoS=2时存在该重发机制
 */
public interface IDupPubRelMessageRepository {

    /**
     * 存储消息
     */
    void put(String clientId, DupPubRelMessage dupPubRelMessage);

    /**
     * 获取消息集合
     */
    List<DupPubRelMessage> get(String clientId);

    /**
     * 删除消息
     */
    void delete(String clientId, Integer messageId);

    /**
     * 删除消息
     */
    void delete(String clientId);

}
